[INFO] fetching crate modus_ponens 0.11.5...
[INFO] testing modus_ponens-0.11.5 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] extracting crate modus_ponens 0.11.5 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate modus_ponens 0.11.5
[INFO] finished tweaking crates.io crate modus_ponens 0.11.5
[INFO] tweaked toml for crates.io crate modus_ponens 0.11.5 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate modus_ponens 0.11.5 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 38 packages to latest compatible versions
[INFO] [stderr]       Adding env_logger v0.7.1 (available: v0.11.10)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding syn v1.0.109 (available: v2.0.117)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e2c61ec495846b855bef628eefddb768fa1000e2346953b6c3380b158c1552c8
[INFO] running `Command { std: "docker" "start" "-a" "e2c61ec495846b855bef628eefddb768fa1000e2346953b6c3380b158c1552c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e2c61ec495846b855bef628eefddb768fa1000e2346953b6c3380b158c1552c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2c61ec495846b855bef628eefddb768fa1000e2346953b6c3380b158c1552c8", kill_on_drop: false }`
[INFO] [stdout] e2c61ec495846b855bef628eefddb768fa1000e2346953b6c3380b158c1552c8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ee14740816dce94fe96759c71a79fe4b623875f58eae27645fc0f6cc419962c
[INFO] running `Command { std: "docker" "start" "-a" "8ee14740816dce94fe96759c71a79fe4b623875f58eae27645fc0f6cc419962c", kill_on_drop: false }`
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling modus_ponens v0.11.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/transform_num.rs:77:16
[INFO] [stdout]    |
[INFO] [stdout] 77 |         "%" => (lhs % rhs),
[INFO] [stdout]    |                ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 77 -         "%" => (lhs % rhs),
[INFO] [stdout] 77 +         "%" => lhs % rhs ,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/path.rs:36:49
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath {
[INFO] [stdout]    |                               --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath<'a> {
[INFO] [stdout]    |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:103:62
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath {
[INFO] [stdout]     |                        --                  --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                   |
[INFO] [stdout]     |                        |                   the lifetime is named here
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath<'a> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding or eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:115:73
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&str, bool, Option<MPPath>) {
[INFO] [stdout]     |                                  --                  --                 ^^^^               ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |                   |                  |
[INFO] [stdout]     |                                  |                   |                  the same lifetime is elided here
[INFO] [stdout]     |                                  |                   the lifetime is named here
[INFO] [stdout]     |                                  the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&'a str, bool, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                          ++                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:138:70
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath, Option<MPPath>) {
[INFO] [stdout]     |                               --                            --       ^^^^^^         ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |                             |        |
[INFO] [stdout]     |                               |                             |        the same lifetime is hidden here
[INFO] [stdout]     |                               the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath<'a>, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                            ++++               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:178:145
[INFO] [stdout]     |
[INFO] [stdout] 178 | ...s(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode {
[INFO] [stdout]     |       --                    --        --                         --                      --                                   -- ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |       |                     |         |                          |                       |                                    |
[INFO] [stdout]     |       |                     |         |                          |                       the lifetime is named here           the same lifetime is named here
[INFO] [stdout]     |       |                     |         |                          the lifetime is named here
[INFO] [stdout]     |       |                     |         the lifetime is named here
[INFO] [stdout]     |       |                     the lifetime is named here
[INFO] [stdout]     |       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn create_paths(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode<'a> {
[INFO] [stdout]     |                                                                                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:203:62
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                         --                         --        ^^^^^^^^             -- the same lifetime is named here
[INFO] [stdout]     |                         |                          |         |
[INFO] [stdout]     |                         |                          |         the same lifetime is hidden here
[INFO] [stdout]     |                         |                          the lifetime is named here
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response<'a>, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lexicon.rs:101:23
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `hash_set_entry` is declared but not used
[INFO] [stdout]   --> src/lib.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | #![feature(hash_set_entry)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.10s
[INFO] running `Command { std: "docker" "inspect" "8ee14740816dce94fe96759c71a79fe4b623875f58eae27645fc0f6cc419962c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ee14740816dce94fe96759c71a79fe4b623875f58eae27645fc0f6cc419962c", kill_on_drop: false }`
[INFO] [stdout] 8ee14740816dce94fe96759c71a79fe4b623875f58eae27645fc0f6cc419962c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2df66a88e7b76157dc221c77a940ac118cddea83402b6d72a9abf56ba0ccedf8
[INFO] running `Command { std: "docker" "start" "-a" "2df66a88e7b76157dc221c77a940ac118cddea83402b6d72a9abf56ba0ccedf8", kill_on_drop: false }`
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/transform_num.rs:77:16
[INFO] [stdout]    |
[INFO] [stdout] 77 |         "%" => (lhs % rhs),
[INFO] [stdout]    |                ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 77 -         "%" => (lhs % rhs),
[INFO] [stdout] 77 +         "%" => lhs % rhs ,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/path.rs:36:49
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath {
[INFO] [stdout]    |                               --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath<'a> {
[INFO] [stdout]    |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:103:62
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath {
[INFO] [stdout]     |                        --                  --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                   |
[INFO] [stdout]     |                        |                   the lifetime is named here
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath<'a> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding or eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:115:73
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&str, bool, Option<MPPath>) {
[INFO] [stdout]     |                                  --                  --                 ^^^^               ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |                   |                  |
[INFO] [stdout]     |                                  |                   |                  the same lifetime is elided here
[INFO] [stdout]     |                                  |                   the lifetime is named here
[INFO] [stdout]     |                                  the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&'a str, bool, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                          ++                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:138:70
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath, Option<MPPath>) {
[INFO] [stdout]     |                               --                            --       ^^^^^^         ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |                             |        |
[INFO] [stdout]     |                               |                             |        the same lifetime is hidden here
[INFO] [stdout]     |                               the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath<'a>, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                            ++++               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:178:145
[INFO] [stdout]     |
[INFO] [stdout] 178 | ...s(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode {
[INFO] [stdout]     |       --                    --        --                         --                      --                                   -- ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |       |                     |         |                          |                       |                                    |
[INFO] [stdout]     |       |                     |         |                          |                       the lifetime is named here           the same lifetime is named here
[INFO] [stdout]     |       |                     |         |                          the lifetime is named here
[INFO] [stdout]     |       |                     |         the lifetime is named here
[INFO] [stdout]     |       |                     the lifetime is named here
[INFO] [stdout]     |       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn create_paths(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode<'a> {
[INFO] [stdout]     |                                                                                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:203:62
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                         --                         --        ^^^^^^^^             -- the same lifetime is named here
[INFO] [stdout]     |                         |                          |         |
[INFO] [stdout]     |                         |                          |         the same lifetime is hidden here
[INFO] [stdout]     |                         |                          the lifetime is named here
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response<'a>, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lexicon.rs:101:23
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `hash_set_entry` is declared but not used
[INFO] [stdout]   --> src/lib.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | #![feature(hash_set_entry)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling modus_ponens v0.11.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/transform_num.rs:77:16
[INFO] [stdout]    |
[INFO] [stdout] 77 |         "%" => (lhs % rhs),
[INFO] [stdout]    |                ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 77 -         "%" => (lhs % rhs),
[INFO] [stdout] 77 +         "%" => lhs % rhs ,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/path.rs:36:49
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath {
[INFO] [stdout]    |                               --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath<'a> {
[INFO] [stdout]    |                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:103:62
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath {
[INFO] [stdout]     |                        --                  --                ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |                   |
[INFO] [stdout]     |                        |                   the lifetime is named here
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath<'a> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding or eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:115:73
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&str, bool, Option<MPPath>) {
[INFO] [stdout]     |                                  --                  --                 ^^^^               ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |                   |                  |
[INFO] [stdout]     |                                  |                   |                  the same lifetime is elided here
[INFO] [stdout]     |                                  |                   the lifetime is named here
[INFO] [stdout]     |                                  the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&'a str, bool, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                          ++                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/path.rs:138:70
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath, Option<MPPath>) {
[INFO] [stdout]     |                               --                            --       ^^^^^^         ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |                             |        |
[INFO] [stdout]     |                               |                             |        the same lifetime is hidden here
[INFO] [stdout]     |                               the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath<'a>, Option<MPPath<'a>>) {
[INFO] [stdout]     |                                                                            ++++               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:178:145
[INFO] [stdout]     |
[INFO] [stdout] 178 | ...s(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode {
[INFO] [stdout]     |       --                    --        --                         --                      --                                   -- ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |       |                     |         |                          |                       |                                    |
[INFO] [stdout]     |       |                     |         |                          |                       the lifetime is named here           the same lifetime is named here
[INFO] [stdout]     |       |                     |         |                          the lifetime is named here
[INFO] [stdout]     |       |                     |         the lifetime is named here
[INFO] [stdout]     |       |                     the lifetime is named here
[INFO] [stdout]     |       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn create_paths(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode<'a> {
[INFO] [stdout]     |                                                                                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/ruletree.rs:203:62
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                         --                         --        ^^^^^^^^             -- the same lifetime is named here
[INFO] [stdout]     |                         |                          |         |
[INFO] [stdout]     |                         |                          |         the same lifetime is hidden here
[INFO] [stdout]     |                         |                          the lifetime is named here
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response<'a>, Vec<MPPath<'a>>) {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lexicon.rs:101:23
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn empty_path(&self) -> MPPath<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `hash_set_entry` is declared but not used
[INFO] [stdout]   --> src/lib.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | #![feature(hash_set_entry)]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.48s
[INFO] running `Command { std: "docker" "inspect" "2df66a88e7b76157dc221c77a940ac118cddea83402b6d72a9abf56ba0ccedf8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2df66a88e7b76157dc221c77a940ac118cddea83402b6d72a9abf56ba0ccedf8", kill_on_drop: false }`
[INFO] [stdout] 2df66a88e7b76157dc221c77a940ac118cddea83402b6d72a9abf56ba0ccedf8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 61a4b201034dfddaffd7c14bf2920591c92d7e11743c589ef9810445990e3517
[INFO] running `Command { std: "docker" "start" "-a" "61a4b201034dfddaffd7c14bf2920591c92d7e11743c589ef9810445990e3517", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/transform_num.rs:77:16
[INFO] [stderr]    |
[INFO] [stderr] 77 |         "%" => (lhs % rhs),
[INFO] [stderr]    |                ^         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 77 -         "%" => (lhs % rhs),
[INFO] [stderr] 77 +         "%" => lhs % rhs ,
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/path.rs:36:49
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath {
[INFO] [stderr]    |                               --                ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                               |
[INFO] [stderr]    |                               the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub fn new(segments: Vec<&'a MPSegment>) -> MPPath<'a> {
[INFO] [stderr]    |                                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/path.rs:103:62
[INFO] [stderr]     |
[INFO] [stderr] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath {
[INFO] [stderr]     |                        --                  --                ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |                   |
[INFO] [stderr]     |                        |                   the lifetime is named here
[INFO] [stderr]     |                        the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 103 |     pub fn substitute(&'a self, matching: &'a MPMatching) -> MPPath<'a> {
[INFO] [stderr]     |                                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding or eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/path.rs:115:73
[INFO] [stderr]     |
[INFO] [stderr] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&str, bool, Option<MPPath>) {
[INFO] [stderr]     |                                  --                  --                 ^^^^               ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                  |                   |                  |
[INFO] [stderr]     |                                  |                   |                  the same lifetime is elided here
[INFO] [stderr]     |                                  |                   the lifetime is named here
[INFO] [stderr]     |                                  the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 115 |     pub fn substitute_to_string(&'a self, matching: &'a MPMatching) -> (&'a str, bool, Option<MPPath<'a>>) {
[INFO] [stderr]     |                                                                          ++                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/path.rs:138:70
[INFO] [stderr]     |
[INFO] [stderr] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath, Option<MPPath>) {
[INFO] [stderr]     |                               --                            --       ^^^^^^         ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                               |                             |        |
[INFO] [stderr]     |                               |                             |        the same lifetime is hidden here
[INFO] [stderr]     |                               the lifetime is named here    the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 138 |     pub fn substitute_owning(&'a self, matching: MPMatching<'a>) -> (MPPath<'a>, Option<MPPath<'a>>) {
[INFO] [stderr]     |                                                                            ++++               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/ruletree.rs:178:145
[INFO] [stderr]     |
[INFO] [stderr] 178 | ...s(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode {
[INFO] [stderr]     |       --                    --        --                         --                      --                                   -- ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |       |                     |         |                          |                       |                                    |
[INFO] [stderr]     |       |                     |         |                          |                       the lifetime is named here           the same lifetime is named here
[INFO] [stderr]     |       |                     |         |                          the lifetime is named here
[INFO] [stderr]     |       |                     |         the lifetime is named here
[INFO] [stderr]     |       |                     the lifetime is named here
[INFO] [stderr]     |       the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 178 |     fn create_paths(&'a self, mut parent: &'a RSNode<'a>, mut paths: Vec<MPPath<'a>>, mut visited: Vec<&'a MPSegment>, mut depth: usize) -> &'a RSNode<'a> {
[INFO] [stderr]     |                                                                                                                                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/ruletree.rs:203:62
[INFO] [stderr]     |
[INFO] [stderr] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response, Vec<MPPath<'a>>) {
[INFO] [stderr]     |                         --                         --        ^^^^^^^^             -- the same lifetime is named here
[INFO] [stderr]     |                         |                          |         |
[INFO] [stderr]     |                         |                          |         the same lifetime is hidden here
[INFO] [stderr]     |                         |                          the lifetime is named here
[INFO] [stderr]     |                         the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 203 |     pub fn query_paths(&'a self, paths: Vec<MPPath<'a>>) -> (Response<'a>, Vec<MPPath<'a>>) {
[INFO] [stderr]     |                                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lexicon.rs:101:23
[INFO] [stderr]     |
[INFO] [stderr] 101 |     pub fn empty_path(&self) -> MPPath {
[INFO] [stderr]     |                       ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 101 |     pub fn empty_path(&self) -> MPPath<'_> {
[INFO] [stderr]     |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: feature `hash_set_entry` is declared but not used
[INFO] [stderr]   --> src/lib.rs:42:12
[INFO] [stderr]    |
[INFO] [stderr] 42 | #![feature(hash_set_entry)]
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `modus_ponens` (lib) generated 9 warnings (run `cargo fix --lib -p modus_ponens` to apply 8 suggestions)
[INFO] [stderr] warning: `modus_ponens` (lib test) generated 9 warnings (9 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/modus_ponens-af83df5e10ae1411)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test lexicon::tests::test_1 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests modus_ponens
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/transform_num.rs:77:16
[INFO] [stderr]    |
[INFO] [stderr] 77 |         "%" => (lhs % rhs),
[INFO] [stderr]    |                ^         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 77 -         "%" => (lhs % rhs),
[INFO] [stderr] 77 +         "%" => lhs % rhs ,
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "61a4b201034dfddaffd7c14bf2920591c92d7e11743c589ef9810445990e3517", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "61a4b201034dfddaffd7c14bf2920591c92d7e11743c589ef9810445990e3517", kill_on_drop: false }`
[INFO] [stdout] 61a4b201034dfddaffd7c14bf2920591c92d7e11743c589ef9810445990e3517
